<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Demo</title>
    <style>
      * {
        margin: 0;
        padding: 0;
      }
      .layout {
        display: grid;
        width: 100vw;
        height: 100vh;
        gap: 20px;
        grid-template-areas:
          'header header .'
          'sidebar content content'
          'footer footer footer';
      }
      header {
        display: grid;
        justify-content: center;
        align-content: center;
        grid-area: header;
        background-color: red;
      }
      sidebar {
        grid-area: sidebar;
        background-color: green;
      }
      content {
        grid-area: content;
        background-color: purple;
      }
      footer {
        grid-area: footer;
        background-color: pink;
      }
    </style>
  </head>
  <body>
    <div class="layout">
      <header>header</header>
      <sidebar>sidebar</sidebar>
      <content>content</content>
      <footer>footer</footer>
    </div>
  </body>
</html>
